﻿using System;
using UnityEngine;
using UnityEngine.Networking;

public class NeatlyAction
{
    public delegate byte[] LoadCallBackDel(string path);

    public static LoadCallBackDel WXResCallBack;

    public delegate void LoadCallBackAsyncDel(string path, Action<byte[]> cb);

    public static LoadCallBackAsyncDel WXResCallBackAsync;

    public delegate T GetPrefs<T>(string path, T defaultValue);

    public static GetPrefs<float> WXGetFloatPrefsFunc;
    public static GetPrefs<int> WXGetIntPrefsFunc;
    public static GetPrefs<string> WXGetStringPrefsFunc;

    public delegate void SetPrefs<T>(string path, T value);

    public static SetPrefs<float> WXSetFloatPrefsFunc;
    public static SetPrefs<int> WXSetIntPrefsFunc;
    public static SetPrefs<string> WXSetStringPrefsFunc;

    public delegate AssetBundle DelFormatAssetBundle(UnityWebRequest request);

    public static DelFormatAssetBundle WXFormatAssetBundle;

    public delegate UnityWebRequest DelWXRequestAssetBundle(string url);

    public static DelWXRequestAssetBundle WXRequestAssetBundle;

    public static Action<string> LoadBundleComplete;
}